public void PassingAsOutput_ReferenceTypeParameter_ReassigningTheParameter_ShouldChangeCallerValue() { IntHolderClass referenceType = new IntHolderClass(5); F12(out referenceType); Assert.AreEqual(1212, referenceType.Number); }
public void PassingAsOutput_ReferenceTypeParameter_ChangingTheValueInsideFunction_ShouldChangeCallerValue() { IntHolderClass referenceType = new IntHolderClass(5); F11(out referenceType); Assert.Pass("referenceType variable must be assigned in the F11(), so we can't just change value of Number property."); }
public void PassingByReference_ReferenceTypeParameter_ReassigningTheParameter_ShouldChangeCallerValue() { var referenceType = new IntHolderClass(5); F8(ref referenceType); Assert.AreEqual(88, referenceType.Number); }
public void PassingByReference_ReferenceTypeParameter_ChangingTheValueInsideFunction_ShouldChangeCallerValue() { var referenceType = new IntHolderClass(5); F7(ref referenceType); Assert.AreEqual(77, referenceType.Number); }
public void ReferenceTypes_ReassigningVariableAfterAssginment_VariablesAreIndependent() { var first = new IntHolderClass(42); var second = first; first = null; Assert.AreEqual(42, second.Number); }
public void ReferenceTypes_AssigningOneVariableToAnother_VariablesPointToSameObject() { var first = new IntHolderClass(42); var second = first; first.Number = 43; Assert.AreEqual(43, second.Number); }
public void DoCount(TimeSpan overhead) { string line = null; Hashtable wordTable = new Hashtable(); DateTime startTime = DateTime.Now; int wordCount = 0; while ((line = stream.ReadLine()) != null) { foreach (string word in regexSplit.Split(line.ToLower())) { wordCount++; //Console.WriteLine("Word: {0}", word); IntHolderClass value = (IntHolderClass)wordTable[word]; if (value == null) { wordTable[word] = new IntHolderClass(); } else { value.Count++; } } } stream.Close(); f.Close(); DateTime endTime = DateTime.Now; ArrayList words = new ArrayList(); foreach (string word in wordTable.Keys) { words.Add(word); } words.Sort(); //foreach (string word in words) //{ //Console.WriteLine("{0} = {1}", word, wordTable[word]); //} Console.WriteLine("IntHolderClass: Counted {0} words ({1} unique) in {2}, delta = {3}", wordCount, words.Count, endTime - startTime, (endTime - startTime) - overhead); }
public void PassingReferenceTypeByValue_AndValueTypeByReference_IsNotTheSame() { var firstValueType = new IntHolderStruct(5); var secondValueType = firstValueType; secondValueType.Number = 6; F101(ref firstValueType); Assert.AreEqual(101101, firstValueType.Number); Assert.AreEqual(6, secondValueType.Number); var firstReferenceType = new IntHolderClass(5); var secondReferenceType = firstReferenceType; secondReferenceType.Number = 6; F102(firstReferenceType); Assert.AreEqual(6, firstReferenceType.Number); Assert.AreEqual(6, secondReferenceType.Number); Assert.AreEqual(firstReferenceType, secondReferenceType); }
private void F102(IntHolderClass referenceType) { referenceType = new IntHolderClass(102102); }
private void F16(params IntHolderClass[] referenceTypes) { referenceTypes.ToList().ForEach(i => i = new IntHolderClass(1616)); }
private void F12(out IntHolderClass referenceType) { referenceType = new IntHolderClass(1212); }
private void F11(out IntHolderClass referenceType) { referenceType = new IntHolderClass(0); }
private void F8(ref IntHolderClass referenceType) { referenceType = new IntHolderClass(88); }
private void F7(ref IntHolderClass referenceType) { referenceType.Number = 77; }
private void F4(IntHolderClass referenceType) { referenceType = new IntHolderClass(44); }
private void F3(IntHolderClass referenceType) { referenceType.Number = 33; }