CannibalSmith ([info]cannibalsmith) rakstīja [info]koderi kopienā,
@ 2007-11-24 20:00:00

Previous Entry  Add to memories!  Tell a Friend!  Next Entry
īpašību simulācija iekš C++
Ķipa getSomething() funkcijas bieži izmanto read-only klases mainīgo nolasīšanai. Bet es tak varu darīt šādi:
class Boo
{
public:
	Boo() : read_only_property(private_variable) { }
	const int& read_only_property;
private:
	int private_variable;
};
Bet ar šādu sintaksi es iegūstu pilnu property (kā, piemēram, C#) simulāciju. No ārpuses izskatīsies kā mainīgais, bet es iekšpusē varu ielikt izsaukuma apstrādi. Vienīgi ārpusē neuzrādīsies vērtības patiesais tips. Es gan varētu nosaukt viņu, piemēram, Tilpums_int...
class Pudele
{
public:
	Tilpums tilpums;
	class Tilpums
	{
	public:
		int operator =(int value) { tilpums = value; }
		operator int() { return tilpums; }
	private:
		int tilpums;
	};
};
Komentāri? Cik jēdzīgas vai nejēdzīgas ir šīs tehnikas? Vai tām ir pielietojums? Vai ir vēl kāds iemesls tās nelietot bez tā, ka tās ir pilnīgi ārpus vispār pieņemtā kodēšanas stila?

Edit: izlaboju kļūdas.


(Lasīt komentārus)

Nopūsties:

No:
Lietotājvārds:
Parole:
Ievadi te 'qws' (liidzeklis pret spambotiem):
Temats:
Tematā HTML ir aizliegts
  
Ziņa:

Gandrīz jau aizmirsu pateikt – šis lietotājs ir ieslēdzis IP adrešu noglabāšanu. Operatore Nr. 65.
Neesi iežurnalējies. Iežurnalēties?