http://groups.google.com/group/comp.lang.c++?hl=en
comp.lang.c++@googlegroups.com
Today's topics:
* Virtual construtors - 2 messages, 2 authors
http://groups.google.com/group/comp.lang.c++/t/aea7843ff0dd519f?hl=en
* Tiffany Bracelet LV Accessories Chanel Earrings etc Discount Wholesale
Paypal payment (www.vipchinatrade.com) - 1 messages, 1 author
http://groups.google.com/group/comp.lang.c++/t/2bd0cb6ff15cc6d3?hl=en
* ☞ ☜free shipping hot sale more fashionable goods brand shoes at www.ecyaya.
com - 1 messages, 1 author
http://groups.google.com/group/comp.lang.c++/t/3502406b245a5a88?hl=en
* ஐ¤ஐ¤ஐ Get Low price Wholesale Nike Air Max shoes at www.fjrjtrade.com <
Paypal Payment> - 1 messages, 1 author
http://groups.google.com/group/comp.lang.c++/t/4f3479de024465b5?hl=en
* Wrap around problem in spherical texture mapping? - 2 messages, 2 authors
http://groups.google.com/group/comp.lang.c++/t/813b917775028bef?hl=en
* want to learn stl - 3 messages, 3 authors
http://groups.google.com/group/comp.lang.c++/t/46c65272546dd209?hl=en
* complex struct - 2 messages, 2 authors
http://groups.google.com/group/comp.lang.c++/t/59f0b47ab3f08848?hl=en
* memory leaks - 4 messages, 4 authors
http://groups.google.com/group/comp.lang.c++/t/d9b20823062f2cb3?hl=en
* Support for export keyword ? - 2 messages, 1 author
http://groups.google.com/group/comp.lang.c++/t/0878ed0c9c1ca584?hl=en
* Get Improved Quality and ROI - 1 messages, 1 author
http://groups.google.com/group/comp.lang.c++/t/a65550e4345ecfed?hl=en
* I'm a newbie. Is this code ugly? - 1 messages, 1 author
http://groups.google.com/group/comp.lang.c++/t/f085e44989fab5ef?hl=en
* WaitForSingleObeject runtime error - 2 messages, 2 authors
http://groups.google.com/group/comp.lang.c++/t/197687ac214ed7e6?hl=en
* How to copy vector? - 1 messages, 1 author
http://groups.google.com/group/comp.lang.c++/t/4adcee4457a06858?hl=en
* Type of elements of std::string - 1 messages, 1 author
http://groups.google.com/group/comp.lang.c++/t/b6aba4785e69df38?hl=en
* Discount Wholesale AAA true leather Chanel Handbags& Purses (paypal payment,
www.dotradenow.com) - 1 messages, 1 author
http://groups.google.com/group/comp.lang.c++/t/3403bc1900f2ba9e?hl=en
==============================================================================
TOPIC: Virtual construtors
http://groups.google.com/group/comp.lang.c++/t/aea7843ff0dd519f?hl=en
==============================================================================
== 1 of 2 ==
Date: Tues, Jan 26 2010 10:24 pm
From: tonydee
On Jan 27, 3:34 am, Mukesh <mukeshs...@gmail.com> wrote:
> Why dont we have virtual constructors?
Been a few comments about this not making sense, but to elaborate with
a framework that might make it easier to explain what you had in mind,
or realise why it might not make sense...
class Fruit
{
Fruit() { }
virtual ~Fruit() { }
};
class Orange : public Fruit
{
Orange() { std::cout << "Orange()\n"; }
}
class Pear : public Fruit
{
Pear() { std::cout << "Pear()\n"; }
}
...then the Pear constructor can be invoked by...
new Pear(); // a new object on the heap
new (address) Pear(); // a new object at an arbitrary memory
location
Pear(); // a local stack-based temp
Pear a; // a local stack-based variable
In any of these situations, the Pear's constructor is called without
any need for "virtual", but the actual type Pear class must be
specified. Perhaps you're hoping a virtual constructor would remove
that latter restriction? That's kind of what virtual functions do in
general... let you invoke an Orange or Pear function when you only
know you have a Fruit. But remember that any given Fruit only becomes
an Orange or Pear at the time it's constructed. virtual functions
just harken back to the earlier determination. If you're calling the
constructor saying "make me a Fruit", you can't magically expect the
compiler to intuit that you felt like an Orange rather than a
Pear. :-)
Hence the FAQ's Pear* clone() and static Pear* create() suggestions...
they use the language's "covariant return type" tolerance (so Pear*
successfully overloads Fruit*), and allow an existing object's runtime
type to determine the new object's type, even though you're referring
to the existing object via a general Fruit*. That's about the most
abstract way of specifying the type to be created. If that's not
enough, and you don't have an existing object of the right type, then
you have to create a factory function, returning Fruit*, with a switch
or if/else statement to run the "return new Orange()" or "return new
Pear()" as you feel appropriate....
Cheers,
Tony
== 2 of 2 ==
Date: Wed, Jan 27 2010 5:08 am
From: Mukesh
I am agree that there is no sense using virtual construstor.
What about if we have default construtor and then virtual copy
constructor ?
On Jan 27, 11:24 am, tonydee <tony_in_da...@yahoo.co.uk> wrote:
> On Jan 27, 3:34 am, Mukesh <mukeshs...@gmail.com> wrote:
>
> > Why dont we have virtual constructors?
>
> Been a few comments about this not making sense, but to elaborate with
> a framework that might make it easier to explain what you had in mind,
> or realise why it might not make sense...
>
> class Fruit
> {
> Fruit() { }
> virtual ~Fruit() { }
> };
>
> class Orange : public Fruit
> {
> Orange() { std::cout << "Orange()\n"; }
> }
>
> class Pear : public Fruit
> {
> Pear() { std::cout << "Pear()\n"; }
> }
>
> ...then the Pear constructor can be invoked by...
>
> new Pear(); // a new object on the heap
> new (address) Pear(); // a new object at an arbitrary memory
> location
> Pear(); // a local stack-based temp
> Pear a; // a local stack-based variable
>
> In any of these situations, the Pear's constructor is called without
> any need for "virtual", but the actual type Pear class must be
> specified. Perhaps you're hoping a virtual constructor would remove
> that latter restriction? That's kind of what virtual functions do in
> general... let you invoke an Orange or Pear function when you only
> know you have a Fruit. But remember that any given Fruit only becomes
> an Orange or Pear at the time it's constructed. virtual functions
> just harken back to the earlier determination. If you're calling the
> constructor saying "make me a Fruit", you can't magically expect the
> compiler to intuit that you felt like an Orange rather than a
> Pear. :-)
>
> Hence the FAQ's Pear* clone() and static Pear* create() suggestions...
> they use the language's "covariant return type" tolerance (so Pear*
> successfully overloads Fruit*), and allow an existing object's runtime
> type to determine the new object's type, even though you're referring
> to the existing object via a general Fruit*. That's about the most
> abstract way of specifying the type to be created. If that's not
> enough, and you don't have an existing object of the right type, then
> you have to create a factory function, returning Fruit*, with a switch
> or if/else statement to run the "return new Orange()" or "return new
> Pear()" as you feel appropriate....
>
> Cheers,
> Tony
==============================================================================
TOPIC: Tiffany Bracelet LV Accessories Chanel Earrings etc Discount Wholesale
Paypal payment (www.vipchinatrade.com)
http://groups.google.com/group/comp.lang.c++/t/2bd0cb6ff15cc6d3?hl=en
==============================================================================
== 1 of 1 ==
Date: Wed, Jan 27 2010 12:16 am
From: yoyotrade
Get Cheap various of Accessories from China:
Chanel Accessories:
Chanel Bracelet
Chanel Chain Bracelet
Chanel Earrings
Chanel Necklace www.dotradenow.com paypal payment
Coach Accessories:
Coach Chain Bracelet
Coach Earrings
Coach Necklace www.dotradenow.com paypal payment
(wholesale free shipping )
TOUS Accessories:
TOUS Chain Bracelet www.dotradenow.com
(wholesale free shipping )
D&G Accessories:
D&G Chain Bracelet
D&G Earrings
D&G Necklace www.dotradenow.com paypal payment
(wholesale free shipping )
Dior Accessories:
Dior Chain Bracelet
Dior Earrings www.dotradenow.com paypal payment
Dior Necklace
(wholesale free shipping )
Gucci Accessories:
Gucci Bracelet
Gucci Chain Bracelet
Gucci Earrings
Gucci Necklace www.dotradenow.com paypal payment
Gucci Rings www.dotradenow.com
(wholesale free shipping )
Juicy Accessories:
Juicy Chain Bracelet
Juicy Earrings www.dotradenow.com paypal payment
Juicy Necklace
www.dotradenow.com (wholesale free shipping )
Links Accessories:
Links Chain Bracelet www.dotradenow.com paypal payment
Links Necklace
Links Pendants
Links Rings
www.dotradenow.com (wholesale free shipping )
LV Accessories:
LV Chain Bracelet
LV Necklace
www.dotradenow.com (wholesale free shipping )
Pandora Chain Bracelet:
(wholesale free shipping )
Swarovski Chain Bracelet: www.dotradenow.com
(wholesale free shipping )
Tiffany Accessories:
Tiffany Bracelet
Tiffany Chain Bracelet
Tiffany Earrings
Tiffany Necklace
Tiffany Rings(wholesale free shipping )
www.dotradenow.com paypal payment
==============================================================================
TOPIC: ☞ ☜free shipping hot sale more fashionable goods brand shoes at www.
ecyaya.com
http://groups.google.com/group/comp.lang.c++/t/3502406b245a5a88?hl=en
==============================================================================
== 1 of 1 ==
Date: Wed, Jan 27 2010 12:16 am
From: hero
☞ ☜free shipping hot sale more fashionable goods brand shoes at www.ecyaya.com
FuZhou ecyaya Trade CO.,LTD is mainly engaged in manufacturing and
exporting the most popular branded apparel, shoes, bags, perfume at
reasonable price. All the products come with original boxes, tags,
label and all it's accessories. We have our own shipping network,which
enables us to ship goods to customers conveniently and promptly.
(www.ecyaya.com)
we engaged in wholesale 4us shoes, A&F Jacket, adicolor%20man%20shoes,
Adidas NBA, Adidas 35TH(M), Adidas Y3, Adidas(M), AF1 25TH LOW(M&W),
AF1 (W), AF1 Fusions AJ9, AF1 Fusions AJ12(M), AF1 Fusions AJ, AF T-
Shirt Women Short, Affliction Jean, AirMAX 1, AirMax 87(M), AirMax 89,
AirMax 90&360, AirMax 90(M), AirMax 91, AirMax 95(M), AirMax 97(M),
AirMax 360(M), AirMax 2003(M), AirMax 2009(M), AirMax (95&360), AirMax
LTD(M), AirMax TN1(M), AirMax TN10, AJ2 4 5 6 Fusions(M), AirMax TN10,
AJ3 4 5 6 Fusions(W), AJ3 5 15 Fusions, AJ10 Fusions AJ12, AJ11
Fusions AJ23,
Amauri Shoes, Armani Belt, Bape 1HT, BAPE Jean , Bape Colourful, Bape
Shoes, BBC Jean Man, Bikkembergs Shoes, BOSS Belt, Bureiy Swimming,
Jordan, Nike shox, Nike NZ, Chanel Belt, Chanel Boots, Chanel
Handbags, Chanel Sandal, Chanel Shoes Women, Chanel Swimming, Chloe
Handbags, Coach Handbag, COACH Sandal,COACH Shoes Man, COACH Shoes
Women, COOGI Jean Man, CROWN HOLDER Jean Man, D&B Handbag, D&G Belt,
D&G Handbags,D&G Jean Man, D&G Shoes Man Low, D&G Watch, DG T-Shirt
Short, DIESEL Jean Man, Dior Goggle, ECKO T-Shirt, ED Hardy Handbags,
ED HARDY Jean Man, ED Hardy Swimming, ED Hardy T-Shirt Man Short,
Evisu Jean Man, Fendi Handbag, G-STAR Jean Man, G-STAR T-Shirt Short,
Gucci Goggle, Gucci Handbags, GUCCI Sandal, GUCCI Jean Man, GUCCI
Shoes Man Low, Gucci Swimming, Jordan 1(M), Jordan 3.5, Jordan 4,
Jordan 5, Jordan 7, Jordan 8, Jordan 11, Jordan 9, Jordan 13, Jordan
21, Jordan 24, Jordan DMP, Jordan Six Rings, Jordan Ture, Juicy
Handbag, JUST cavalli Jean Man, Lacoste T-Shirt Man Short, LEVIS Jean
Man, LV Belt, LV Goggle, LV Handbags, LV Swimming, M+4 Jean Man, Miu
Miu, Nike RIFT(M), Okley Goggle, POLO T-Shirt Man Short, Prada
Handbags, PRADA Jean Man, Prada Shoes Man Low, Prada Watch, Puma Man
Shoes, RMC Jean Man, ROCK Jean Man, Shox NZ(M), Shox R2 Man, Shox R3
(M), Shox R4(M), Shox R5, Shox TL3(M), Shox Turob, Touse Swimming, TR
Jean Man, TRUE RELIG Jean Man, UGG 30ht 5728, UGG 5825 AAA, UGG Boot
5818, Versace Goggle, VERSACE Jean Man etc.(www.ecyaya.com)
we engaged in wholesale 4us shoes, A&F Jacket, adicolor%20man%20shoes,
Adidas NBA, Adidas 35TH(M), Adidas Y3, Adidas(M), AF1 25TH LOW(M&W),
AF1 (W), AF1 Fusions AJ9, AF1 Fusions AJ12(M), AF1 Fusions AJ, AF T-
Shirt Women Short, Affliction Jean, AirMAX 1, AirMax 87(M), AirMax 89,
AirMax 90&360, AirMax 90(M), AirMax 91, AirMax 95(M), AirMax 97(M),
AirMax 360(M), AirMax 2003(M), AirMax 2009(M), AirMax (95&360), AirMax
LTD(M), AirMax TN1(M), AirMax TN10, AJ2 4 5 6 Fusions(M), AirMax TN10,
AJ3 4 5 6 Fusions(W), AJ3 5 15 Fusions, AJ10 Fusions AJ12, AJ11
Fusions AJ23,
Amauri Shoes, Armani Belt, Bape 1HT, BAPE Jean , Bape Colourful, Bape
Shoes, BBC Jean Man, Bikkembergs Shoes, BOSS Belt, Bureiy Swimming,
Jordan, Nike shox, Nike NZ, Chanel Belt, Chanel Boots, Chanel
Handbags, Chanel Sandal, Chanel Shoes Women, Chanel Swimming, Chloe
Handbags, Coach Handbag, COACH Sandal,COACH Shoes Man, COACH Shoes
Women, COOGI Jean Man, CROWN HOLDER Jean Man, D&B Handbag, D&G Belt,
D&G Handbags,D&G Jean Man, D&G Shoes Man Low, D&G Watch, DG T-Shirt
Short, DIESEL Jean Man, Dior Goggle, ECKO T-Shirt, ED Hardy Handbags,
ED HARDY Jean Man, ED Hardy Swimming, ED Hardy T-Shirt Man Short,
Evisu Jean Man, Fendi Handbag, G-STAR Jean Man, G-STAR T-Shirt Short,
Gucci Goggle, Gucci Handbags, GUCCI Sandal, GUCCI Jean Man, GUCCI
Shoes Man Low, Gucci Swimming, Jordan 1(M), Jordan 3.5, Jordan 4,
Jordan 5, Jordan 7, Jordan 8, Jordan 11, Jordan 9, Jordan 13, Jordan
21, Jordan 24, Jordan DMP, Jordan Six Rings, Jordan Ture, Juicy
Handbag, JUST cavalli Jean Man, Lacoste T-Shirt Man Short, LEVIS Jean
Man, LV Belt, LV Goggle, LV Handbags, LV Swimming, M+4 Jean Man, Miu
Miu, Nike RIFT(M), Okley Goggle, POLO T-Shirt Man Short, Prada
Handbags, PRADA Jean Man, Prada Shoes Man Low, Prada Watch, Puma Man
Shoes, RMC Jean Man, ROCK Jean Man, Shox NZ(M), Shox R2 Man, Shox R3
(M), Shox R4(M), Shox R5, Shox TL3(M), Shox Turob, Touse Swimming, TR
Jean Man, TRUE RELIG Jean Man, UGG 30ht 5728, UGG 5825 AAA, UGG Boot
5818, Versace Goggle, VERSACE Jean Man etc.(www.ecyaya.com)
our products have reasonable price, high quality.(www.ecyaya.com)
we have good service, fast shipment, paypal payment.(www.ecyaya.com)
We will offer customize service for you,welcome to get more details
from our website: More Discount Product See Web: www.ecyaya.com
welcome to visit, just do it as soon as possible!!!(www.ecyaya.com)
==============================================================================
TOPIC: ஐ¤ஐ¤ஐ Get Low price Wholesale Nike Air Max shoes at www.fjrjtrade.com <
Paypal Payment>
http://groups.google.com/group/comp.lang.c++/t/4f3479de024465b5?hl=en
==============================================================================
== 1 of 1 ==
Date: Wed, Jan 27 2010 12:24 am
From: "www.fjrjtrade.com"
ஐ¤ஐ¤ஐ Get Low price Wholesale Nike Air Max shoes at www.fjrjtrade.com
<Paypal Payment>
Cheap wholesale Nike Air Max shoes www.fjrjtrade.com
Cheap wholesale Nike Air Max 2006
http://www.fjrjtrade.com/1780-Nike-Air-Max-2006.html
Cheap wholesale Nike Air Max 2006 1era
http://www.fjrjtrade.com/1781-Nike-Air-Max-2006-1era.html
Cheap wholesale Nike Air Max 2006 3era
http://www.fjrjtrade.com/1782-Nike-Air-Max-2006-3era.html
Cheap wholesale Nike Air Max 2006 Man 2era
http://www.fjrjtrade.com/1783-Nike-Air-Max-2006-Man-2era.html
Cheap wholesale Nike Air Max 92 Man
http://www.fjrjtrade.com/1778-Nike-Air-Max-92-Man.html
Cheap wholesale Nike Air Max CLSSIC BW
http://www.fjrjtrade.com/1797-Nike-Air-Max-CLSSIC-BW.html
Cheap wholesale Nike Air Max Skyline
http://www.fjrjtrade.com/1798-Nike-Air-Max-Skyline.html
Cheap wholesale Nike Air Max Skyline Man
http://www.fjrjtrade.com/1799-Nike-Air-Max-Skyline-Man.html
Cheap wholesale Nike Air Max Skyline Women
http://www.fjrjtrade.com/1800-Nike-Air-Max-Skyline-Women.html
Cheap wholesale Nike Air Max Tailwind
http://www.fjrjtrade.com/1796-Nike-Air-Max-Tailwind.html
Cheap wholesale Air Max 09
http://www.fjrjtrade.com/994-Air-Max-09.html
Cheap wholesale Nike Air Max 2009 man
http://www.fjrjtrade.com/1790-Nike-Air-Max-2009-women.html
Cheap wholesale Nike Air Max 2009 women
http://www.fjrjtrade.com/1789-Nike-Air-Max-2009-man.html
Cheap wholesale Nike Air Max 2009 2era Man
http://www.fjrjtrade.com/2094-Nike-Air-Max-2009-2era-Man.html
Cheap wholesale Nike Air Max 2009 2era Women
http://www.fjrjtrade.com/2095-Nike-Air-Max-2009-2era-Women.html
Cheap wholesale Air Max 87
http://www.fjrjtrade.com/995-Air-Max-87.html
Cheap wholesale Nike Air Max 87 Man
http://www.fjrjtrade.com/2043-Nike-Air-Max-87-Man.html
Cheap wholesale Nike Air Max 87 Women
http://www.fjrjtrade.com/2044-Nike-Air-Max-87-Women.html
Cheap wholesale Nike Air Max 87 M&W
http://www.fjrjtrade.com/2045-Nike-Air-Max-87-MW.html
Cheap wholesale Air Max 89
http://www.fjrjtrade.com/997-Air-Max-89.html
Cheap wholesale Air Max 90
http://www.fjrjtrade.com/998-Air-Max-90.html
Cheap wholesale Nike Air Max 90 CURRENT Man
http://www.fjrjtrade.com/1773-Nike-Air-Max-90-CURRENT-Man.html
Cheap wholesale Nike Air Max 90 Kid's
http://www.fjrjtrade.com/1774-Nike-Air-Max-90-Kids.html
Cheap wholesale Nike Air Max 90 Man Hight
http://www.fjrjtrade.com/1775-Nike-Air-Max-90-Man-Hight.html
Cheap wholesale AIR MAX 90 Man
http://www.fjrjtrade.com/1184-AIR-MAX-90-Man.html
Cheap wholesale AIR MAX 90 Woman
http://www.fjrjtrade.com/1185-AIR-MAX-90-Woman.html
Cheap wholesale Air Max 91
http://www.fjrjtrade.com/999-Air-Max-91.html
Cheap wholesale Nike Air Max 91 Man
http://www.fjrjtrade.com/1776-Nike-Air-Max-91-Man.html
Cheap wholesale Nike Air Max 91 Women
http://www.fjrjtrade.com/1777-Nike-Air-Max-91-Women.html
Cheap wholesale Air Max 93
http://www.fjrjtrade.com/1000-Air-Max-93.html
Cheap wholesale Air Max 95
http://www.fjrjtrade.com/1001-Air-Max-95.html
Cheap wholesale Nike Air Max 95 Kid's
http://www.fjrjtrade.com/1779-Nike-Air-Max-95-Kids.html
Cheap wholesale Air Max 95 Man
http://www.fjrjtrade.com/1186-Air-Max-95-Man.html
Cheap wholesale Air Max 95 Woman
http://www.fjrjtrade.com/1187-Air-Max-95-Woman.html
Cheap wholesale Air Max 180
http://www.fjrjtrade.com/1002-Air-Max-180.html
Cheap wholesale Air Max 97
http://www.fjrjtrade.com/1766-Air-Max-97.html
Cheap wholesale Air Max 97 Man
http://www.fjrjtrade.com/1767-Air-Max-97-Man.html
Cheap wholesale Air Max 97 Women
http://www.fjrjtrade.com/1768-Air-Max-97-Women.html
Cheap wholesale Air Max LTD
http://www.fjrjtrade.com/1003-Air-Max-LTD.html
Cheap wholesale Nike Air Max LTD Kid's
http://www.fjrjtrade.com/1791-Nike-Air-Max-LTD-Kids.html
Cheap wholesale Air Max LTD Man
http://www.fjrjtrade.com/1188-Air-Max-LTD-Man.html
Cheap wholesale Air Max LTD Woman
http://www.fjrjtrade.com/1189-Air-Max-LTD-Woman.html
Cheap wholesale Air Max LTD2
http://www.fjrjtrade.com/1004-Air-Max-LTD2.html
Cheap wholesale Air Max LTD2 Man
http://www.fjrjtrade.com/1190-Air-Max-LTD2-Man.html
Cheap wholesale Air Max LTD2 Woman
http://www.fjrjtrade.com/1191-Air-Max-LTD2-Woman.html
Cheap wholesale Air Max STAB
http://www.fjrjtrade.com/1005-Air-Max-STAB.html
Cheap wholesale Air Max TN
http://www.fjrjtrade.com/1006-Air-Max-TN.html
Cheap wholesale Air Max TN Man
http://www.fjrjtrade.com/1192-Air-Max-TN-Man.html
Cheap wholesale Air Max TN Woman
http://www.fjrjtrade.com/1193-Air-Max-TN-Woman.html
Cheap wholesale Air Max TN8
http://www.fjrjtrade.com/1007-Air-Max-TN8.html
Cheap wholesale Nike Air Max TN8 Man
http://www.fjrjtrade.com/1792-Nike-Air-Max-TN8-Man.html
Cheap wholesale Nike Air Max TN8 Women
http://www.fjrjtrade.com/1793-Nike-Air-Max-TN8-Women.html
Cheap wholesale Air Max TN10
http://www.fjrjtrade.com/1008-Air-Max-TN10.html
Cheap wholesale Nike Air Max TN10 Kid's
http://www.fjrjtrade.com/1794-Nike-Air-Max-TN10-Kids.html
Cheap wholesale Nike Air Max TN10 Man
http://www.fjrjtrade.com/1795-Nike-Air-Max-TN10-Man.html
More models at website:
http://www.fjrjtrade.com
==============================================================================
TOPIC: Wrap around problem in spherical texture mapping?
http://groups.google.com/group/comp.lang.c++/t/813b917775028bef?hl=en
==============================================================================
== 1 of 2 ==
Date: Wed, Jan 27 2010 12:59 am
From: mitu
Wrap around problem in spherical texture mapping?
== 2 of 2 ==
Date: Wed, Jan 27 2010 2:56 am
From: Richard Herring
In message
<2b5e9d6c-a736-4d15-af50-a397b80bfb1b@k41g2000yqm.googlegroups.com>,
mitu <nitu.goyal@gmail.com> writes
>Wrap around problem in spherical texture mapping?
Is there one? What was your question about C++?
(come to think of it, what was your question? just adding a question
mark to a phrase doesn't make it one.)
You're probably looking for a newsgroup about algorithms or graphics.
--
Richard Herring
==============================================================================
TOPIC: want to learn stl
http://groups.google.com/group/comp.lang.c++/t/46c65272546dd209?hl=en
==============================================================================
== 1 of 3 ==
Date: Wed, Jan 27 2010 1:06 am
From: vicky
i want to learn stl, if anybody can guide
== 2 of 3 ==
Date: Wed, Jan 27 2010 5:32 am
From: Victor Bazarov
vicky wrote:
> i want to learn stl, if anybody can guide
Where do you live? Can you wait? As soon as I have enough spare time,
I'll walk/drive/fly/swim over, rent a flat in your area, and we can get
together on a regular basis so I can guide you... Or you can simply get
a course in your local college or get a book ("The C++ Standard Library"
by Josuttis is excellent) and study.
V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
== 3 of 3 ==
Date: Wed, Jan 27 2010 7:00 am
From: "**Group User**"
On Jan 27, 8:32 pm, Victor Bazarov <v.Abaza...@comAcast.net> wrote:
> vicky wrote:
> Or you can simply get
> a course in your local college or get a book ("The C++ Standard Library"
> by Josuttis is excellent) and study.
>
> V
> --
> Please remove capital 'A's when replying by e-mail
> I do not respond to top-posted replies, please don't ask
Yes I definitely agree, it is Joshhh - the man of STL
I find books by Deitel are good for beginners too, they are used as
textbooks are on library shelves in quite a lot of colleges
==============================================================================
TOPIC: complex struct
http://groups.google.com/group/comp.lang.c++/t/59f0b47ab3f08848?hl=en
==============================================================================
== 1 of 2 ==
Date: Wed, Jan 27 2010 1:27 am
From: ytrembla@nyx.nyx.net (Yannick Tremblay)
In article <4b5fada2$0$827$4fafbaef@reader5.news.tin.it>,
Larry <dontmewithme@got.it> wrote:
>
>I cannot use std::string since I need to deal with binary data
>
std::basic_string<unsigned char>
std::vector<unsigned char>
std::basic_string<char>
std::vector<char>
or typedef a "byte" type the way you prefer.
There is nothing in std::basic_string<> nor in std::string (which is
just std::basic_string<char>) that makes it unable to hold binary
data.
The only thing that will not work are the convenience constructor,
operators and methods that take a char * to a '\0' terminated string.
Generally speaking, the interface of std:string offers methods that
are typically used for textual (string?) manipulation while the
interface of std::vector is aimed at manipulation of the elements
individually. In addition, the casual reader of your code will tend to
assume that when a std::string is used, it is likely to be used for
textual data while abstract collections or binary buffer are more
naturally held in std::vector. But both containers will work
perfectly well with binary data.
Several people have been trying to recommend you to give up on writing
code that is so prone to buffer overflow and memory violations. C++
offers you tool to make life for yourself much easier.
== 2 of 2 ==
Date: Wed, Jan 27 2010 3:05 am
From: "Larry"
"Yannick Tremblay" <ytrembla@nyx.nyx.net> ha scritto nel messaggio
news:1264584437.317080@irys.nyx.net...
> std::basic_string<unsigned char>
> std::vector<unsigned char>
>
> std::basic_string<char>
> std::vector<char>
>
> or typedef a "byte" type the way you prefer.
>
>
> There is nothing in std::basic_string<> nor in std::string (which is
> just std::basic_string<char>) that makes it unable to hold binary
> data.
>
> Several people have been trying to recommend you to give up on writing
> code that is so prone to buffer overflow and memory violations. C++
> offers you tool to make life for yourself much easier.
I am going to deal with chars form 0x00 to 0xFF mostly.I don't think the
lastest code I have written (and posted above) is so prone to buffer
overflow as well as memory violations.
==============================================================================
TOPIC: memory leaks
http://groups.google.com/group/comp.lang.c++/t/d9b20823062f2cb3?hl=en
==============================================================================
== 1 of 4 ==
Date: Wed, Jan 27 2010 1:48 am
From: "io_x"
"James Kanze" <james.kanze@gmail.com> ha scritto nel messaggio
news:4d4a6dae-1a50-4e01-9fbe-4bb005e180bd@f12g2000yqn.googlegroups.com...
> Also, vector< unsigned char > will normally do bounds checking,
> and other important things to avoid undefined behavior.
this seems untrue for std::vector<T> data_;
for T == struct Color3d{double r, g, b;};
#include <iostream>
#include <cstdlib>
#include <stdint.h>
#include <vector>
#define u8 uint8_t
#define i8 int8_t
#define u32 uint32_t
#define i32 int32_t
// float 32 bits
#define f32 float
#define S sizeof
#define R return
#define P printf
#define F for
using namespace std;
template <typename T>
class Image
{
class Indexer
{
public:
Indexer(T* data) : data_(data)
{
}
T& operator[](int x) const
{
return data_[x];
}
private:
T* data_;
};
class ConstIndexer
{
public:
ConstIndexer(const T* data) : data_(data)
{
}
T operator[](int x) const
{
return data_[x];
}
private:
const T* data_;
};
public:
Image(int width, int height) :
width_(width),
height_(height),
data_(width*height)
{
}
int width() const
{
return width_;
}
int height() const
{
return height_;
}
Indexer operator[](int y)
{
return Indexer(&data_[y*width_]);
}
ConstIndexer operator[](int y) const
{
return ConstIndexer(&data_[y*width_]);
}
private:
int width_;
int height_;
std::vector<T> data_;
};
struct Color3d
{
double r, g, b;
};
void fill(Image<Color3d>& img, Color3d color)
{
for (int y = 0; y < img.height(); ++y)
for (int x = 0; x < img.width(); ++x)
img[y][x] = color;
}
int main(void)
{Color3d h={0.78373, 0.1383, 1-0.78373-0.1383};
Image<Color3d> g(768, 1024);
// cout << "a=" << Image::a << "\n" ;
cout << "Inizio\n";
fill(g, h);
cout << "(r,g,b)==(" << g[0][0].r << ", "
<< g[0][0].g << ", "
<< g[768][1024].b << ")\n";
cout << "end\n";
return 0;
}
-------
result
Inizio
(r,g,b)==(0.78373, 0.1383, 0.07797)
end
== 2 of 4 ==
Date: Wed, Jan 27 2010 2:53 am
From: Richard Herring
In message <4b600a1d$0$828$4fafbaef@reader5.news.tin.it>, io_x
<a@b.c.invalid> writes
>
>"James Kanze" <james.kanze@gmail.com> ha scritto nel messaggio
>news:4d4a6dae-1a50-4e01-9fbe-4bb005e180bd@f12g2000yqn.googlegroups.com...
>> Also, vector< unsigned char > will normally do bounds checking,
>> and other important things to avoid undefined behavior.
>
>this seems untrue for std::vector<T> data_;
>for T == struct Color3d{double r, g, b;};
>
>
>#include <iostream>
>#include <cstdlib>
>#include <stdint.h>
>#include <vector>
>
>#define u8 uint8_t
>#define i8 int8_t
>#define u32 uint32_t
>#define i32 int32_t
>// float 32 bits
>#define f32 float
>
>#define S sizeof
>#define R return
>#define P printf
>#define F for
Sorry, I stopped reading here. That kind of macro abuse merely makes the
rest of your code unreadable.
What point were you trying to make?
--
Richard Herring
== 3 of 4 ==
Date: Wed, Jan 27 2010 3:20 am
From: "Larry"
"James Kanze" <james.kanze@gmail.com> ha scritto nel messaggio
news:4d4a6dae-1a50-4e01-9fbe-4bb005e180bd@f12g2000yqn.googlegroups.com...
> In fact, "vector< unsigned char >" is full-fledged type, which
> behaves like any other type, where as "unsigned char buffer[ 51 ]"
> creates an object of a second class type, which is fairly
> broken, and doesn't behave normally.
>
> Also, vector< unsigned char > will normally do bounds checking,
> and other important things to avoid undefined behavior.
>
> There are, of course, cases where something like "unsigned char
> buffer[ 51 ]" is justified, but they aren't that common.
well, I could have done with vectors indeed. Yet, I thought becauese of all
those internal checks vector does maybe my solution would have been
faster...
where:
unsigned char buffer[51];
is fixed length. Also, I know that it will never deal with data longer that
51 bytes beforhand!
I am doing real time application I need to run fast.
thanks
== 4 of 4 ==
Date: Wed, Jan 27 2010 5:53 am
From: Christian Hackl
Larry ha scritto:
> well, I could have done with vectors indeed. Yet, I thought becauese of all
> those internal checks vector does maybe my solution would have been
> faster...
You must not guess but measure.
It is unlikely that you will notice any difference in speed.
> unsigned char buffer[51];
>
> is fixed length. Also, I know that it will never deal with data longer that
> 51 bytes beforhand!
>
> I am doing real time application I need to run fast.
Even if std::vector should turn out to be too slow for you, which,
again, is unlikely, there are more elegant solutions, e.g. boost::array.
Also, you should never say "never" when it comes to software
requirements. Chances are that sooner or later you will have to deal
with data longer than 51 bytes.
--
Christian Hackl
hacki@sbox.tugraz.at
Milano 2008/2009 -- L'Italia chiamò, sì!
==============================================================================
TOPIC: Support for export keyword ?
http://groups.google.com/group/comp.lang.c++/t/0878ed0c9c1ca584?hl=en
==============================================================================
== 1 of 2 ==
Date: Wed, Jan 27 2010 1:41 am
From: Nick Keighley
On 20 Jan, 23:53, Timothy Madden <terminato...@gmail.com> wrote:
> On Jan 20, 4:28 pm, Jerry Coffin <jerryvcof...@yahoo.com> wrote:
> > In article <4b56ed82$0$283$14726...@news.sunsite.dk>,
> > terminato...@gmail.com says...
> > > Oh crap ... so Intel and Comeau are but mere C++ to C translators !
ie. they compile C++ to C
> > No -- Intel produces object code directly.
>
> > > Why do people bother to even mention/talk about such pathetic excuses
> > > for a compiler ?
because its one way to implement a compiler?
> > Producing C as its output doesn't make Comeau any less a compiler
> > than producing object code would. Your claim only shows that you
> > don't know what you're talking about.
>
> > From a practical viewpoint, its use of C as an intermediate language
> > isn't normally visible at all. You run the compiler, and you get an
> > executable file as output.
>
> > > So maybe Sun Studio Compiler is still standing as a /compiler/ that
> > > implements export ?
>
> > Not likely -- especially since (as far as I can see) Sun specifically
> > says their most recent compiler does NOT implement export. See:
>
> >http://dlc.sun.com/pdf/820-7599/820-7599.pdf, page 228.
>
> > According to Sun: "This feature is not yet implemented, but the
> > export keyword is recognized."
>
> > So, people talk about Comeau and Intel as the only ones that
> > implement export, because nothing else implements export. They talk
> > about Comeau, because it's the ONLY one that really supports export.
>
> > --
> > Later,
> > Jerry.
don't quote .sigs
> I well know C++ compilers are actually translators from C++ to
> assembly language, but still there is a big difference between a cheap
> C++ to C translator and a real C++ compiler. Big difference !
what is this argument by repetition? Are compilers that compile C
significantly cheaper than native code compilers. It wouldn't surprise
me if native code C++ compilers often share a back-end with the
implementor's C compiler. Do gcc write a fresh back end for both C and
C++ every time they port?
> This is exactly why such a good-looking, standards-conforming pseudo
> "compiler" is not really wide-spread as others, real ones, are,
> despite being less conforming and more expensive :).
>
> I would like to try Comeau but they have no free version for their
> cheap translator, they actually charge money for it !
maybe this "cheap" thing is in your head?
> So if I just want to see the export keyword live in action I can only
> try the free Linux version of Intel C++ compiler.
er, comeau?
> The Intel compiler is also awkward in that it requires Microsoft
> Visual C++ or at last some SDK in order to run !
why?
> The Linux version is
> somewhat better: it requires gcc ...
what? Intel's compiler requires gcc?
> If only they would have a free Windows version that would work with
> mingw32 gcc, that would be so cool !
>
> I am still to try it, to see the export keyword actually working.
>
> You are right about Sun Studio compiler, it merely recognises export
> as a C++ keyword, but does not implement the feature. I was looking
> through their online documentation too briefly to notice that a simple
> mention of the keyword does not mean the compiler supports exporting
> templates ...
== 2 of 2 ==
Date: Wed, Jan 27 2010 1:44 am
From: Nick Keighley
On 21 Jan, 22:37, Brian <c...@mailvault.com> wrote:
> On Jan 21, 2:33 pm, James Kanze <james.ka...@gmail.com> wrote:
> > Writing and maintaining a compiler is a lot of work. Some
> > people like to get paid for their work.
>
> Same for a search engine and yet they don't cost money to use.
there are historical reasons for that. possibly to do with trying to
establish a monopoly
==============================================================================
TOPIC: Get Improved Quality and ROI
http://groups.google.com/group/comp.lang.c++/t/a65550e4345ecfed?hl=en
==============================================================================
== 1 of 1 ==
Date: Wed, Jan 27 2010 2:02 am
From: debra h
When my friend suggested the name of Embedded360, I had no other
choice but to take his word since my project was at a critical
juncture. It proved to be a good decision since their model based
development approach reduced the total product development cycle time
at the same time providing improved quality and ROI. Trust me,
Embedded 360 never lets you down. Get more details here: www.embedded360.com.
==============================================================================
TOPIC: I'm a newbie. Is this code ugly?
http://groups.google.com/group/comp.lang.c++/t/f085e44989fab5ef?hl=en
==============================================================================
== 1 of 1 ==
Date: Wed, Jan 27 2010 2:20 am
From: "Christopher Dearlove"
"Richard Herring" <junk@[127.0.0.1]> wrote in message
news:JZfKbybiBxXLFweK@baesystems.com...
> So you're using wrapping as a poor substitute for checking that t is in
> range. On most systems, t will reach a value which exceeds the available
> memory long before it wraps to a negative value.
And, while it usually happens to work, wrapping of signed integers
is actually undefined behaviour.
If you are using unsigned integers (like size_t) it's easy to check wrapping
of addition (although as noted that probably is the wrong test). If a, b, c
are such values and
c = a + b;
Then wrapping has ocurred if (and only if) c < a (or, equally well, c < b).
What I don't know how to do without using division - any solutions welcome
- is to check the overflow of a * b (unsigned again). c = a * b can overflow
but with c > a and c > b. That's not the issue here, but it's one I have
wanted
(for smaller unsigned types than size_t).
Of course with regard to the original code this is nit-picking fine points
of code that the only thing to actually do with it is bin it and start
again.
It's instructive that the poster has had to revise the code at least twice
since posting to fix bugs. The polite term is unmaintainable.
==============================================================================
TOPIC: WaitForSingleObeject runtime error
http://groups.google.com/group/comp.lang.c++/t/197687ac214ed7e6?hl=en
==============================================================================
== 1 of 2 ==
Date: Wed, Jan 27 2010 3:16 am
From: "Larry"
Hi,
I am getting this close to finish my tiny streaming server...having said
that I have a problem with the following code. It basically fires a runtime
error when I disconect from the sever! (closing the telnet window)
I wound up finding out that the error may be fired because of this line:
WaitForSingleObject(eventi[threadid], INFINITE);
If I replaceit with: Sleep(1000) everything goes ok....
/*
*
* Streaming Server v1.0 by THEARTOFWEB Software
*
*/
#include <iostream>
#include <string>
#include <map>
#include <algorithm>
#include <process.h>
#include <cstdlib>
#include <ctime>
#include "socket.h"
#include <boost/circular_buffer.hpp>
using namespace std;
using namespace boost;
const string CRLF = "\r\n";
const int numbuff = 3;
unsigned int __stdcall Consumer(void* sock);
unsigned int __stdcall Producer(void*);
void getDateTime(char * szTime);
enum buffer_status
{
BUFF_DONE = 1,
BUFF_EMPTY = 0
};
struct buffer
{
unsigned char data[1024];
int bytesRecorded;
int flag;
buffer(const unsigned char * data_, const int bytesRecorded_, const int
flag_) :
bytesRecorded(bytesRecorded_), flag(flag_)
{
copy(data_, data_ + bytesRecorded_, data);
}
};
struct circular
{
circular_buffer<buffer> cb;
};
map<int, circular> users;
map<int, circular>::iterator uit;
map<int, HANDLE> eventi;
int main()
{
// Launch Producer
unsigned int prodRet;
_beginthreadex(0,0,Producer,NULL,0,&prodRet);
if(prodRet)
cout << "Launched Producer Thread!" << endl;
// Set up server (port: 8000, maxconn: 10)
SocketServer sockIn(8000, 10);
while(1)
{
// ...wait for incoming connections...
Socket* s = sockIn.Accept();
unsigned int sockRet;
_beginthreadex(0,0,Consumer,s,0,&sockRet);
if(sockRet)
cout << "Spawned a new thread!" << endl;
}
sockIn.Close();
return EXIT_SUCCESS;
}
// Consumer
unsigned int __stdcall Consumer(void* sock)
{
Socket* s = (Socket*) sock;
s->SendBytes("Hello World!" + CRLF);
int threadid = (int)GetCurrentThreadId();
// Create Event & push it in the event map
HANDLE hevent = CreateEvent(NULL,FALSE,FALSE,NULL);
eventi.insert(make_pair(threadid,hevent));
// Prepare & add circular buffer to the map
circular c;
c.cb.set_capacity(numbuff);
for(int i = 0; i<numbuff; i++)
{
c.cb.push_back(buffer(NULL,0,BUFF_EMPTY));
}
users.insert(make_pair(threadid, c));
//
// TODO:
// Read data from the buffer
// and send it to the client
//
// When using push_back the oldest
// element in the circular buffer
// will be in the index 0
//
Sleep(500);
while(1)
{
// CALLBACK EVENT
WaitForSingleObject(eventi[threadid], INFINITE);
if(users[threadid].cb.at(0).flag == BUFF_DONE)
{
string line = (char*)users[threadid].cb.at(0).data;
int ret = s->SendBytes(line + CRLF);
if(SOCKET_ERROR == ret)
break;
}
}
// Close & remove event from event map
CloseHandle(eventi[threadid]);
eventi.erase(threadid);
// Remove buffer from the map
users.erase(threadid);
// Say bye to the client
s->SendBytes("Bye bye!" + CRLF);
// Disconnect client
cout << "Closing thread..." << endl;
s->Close();
delete s;
return 0;
}
// Producer
unsigned int __stdcall Producer(void*)
{
while(1)
{
Sleep(1000);
char szTime[30]; getDateTime(szTime);
for(uit=users.begin(); uit!=users.end(); ++uit)
{
users[uit->first].cb.push_back(buffer((unsigned char*)szTime,
30, BUFF_DONE));
SetEvent(eventi[uit->first]);
cout << "Producer is writing to: " << uit->first << endl;
}
}
return 0;
}
void getDateTime(char * szTime)
{
time_t rawtime = time(NULL);
struct tm timeinfo;
gmtime_s(&timeinfo, &rawtime);
strftime(szTime, 30, "%a, %d %b %Y %X GMT", &timeinfo);
}
// thanks
== 2 of 2 ==
Date: Wed, Jan 27 2010 5:41 am
From: Victor Bazarov
Larry wrote:
> Hi,
>
> I am getting this close to finish my tiny streaming server...having
> said that I have a problem with the following code. It basically fires a
> runtime error
..with which we really can't help you - that's OS-specific..
> when I disconect from the sever! (closing the telnet window)
>
> I wound up finding out that the error may be fired because of this line:
"May be"? So, it's possible that it's not the call to
WaitForSingleObject but something else that screws up the memory
occupied by the actual 'eventi' map...
>
> WaitForSingleObject(eventi[threadid], INFINITE);
>
> If I replaceit with: Sleep(1000) everything goes ok....
Does the 'eventi' map actually contain a valid value with the key
'threadid' for passing it to 'WaitForSingleObject'? Those things need
to be checked, you know.
If access to 'data' in your 'buffer' is somehow incorrect (you need to
check), and you write beyond the boundary of 1024 elements, it's very
likely that you stomp all over the dynamically allocated memory used to
keep your 'eventi' map elements. Then attempt to access them can cause
undefined behaviour, which in your case ends up being a run-time error
reported by the OS.
> [..]
>
> struct buffer
> {
> unsigned char data[1024];
> int bytesRecorded;
> int flag;
> buffer(const unsigned char * data_, const int bytesRecorded_, const
> int flag_) :
> bytesRecorded(bytesRecorded_), flag(flag_)
> {
> copy(data_, data_ + bytesRecorded_, data);
> }
> };
>
> struct circular
> {
> circular_buffer<buffer> cb;
> };
>
> map<int, circular> users;
> map<int, circular>::iterator uit;
> map<int, HANDLE> eventi;
>
> int main()
> {
> [..]
> // thanks
V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
==============================================================================
TOPIC: How to copy vector?
http://groups.google.com/group/comp.lang.c++/t/4adcee4457a06858?hl=en
==============================================================================
== 1 of 1 ==
Date: Wed, Jan 27 2010 5:29 am
From: Victor Bazarov
Immortal Nephi wrote:
> [.. huge unnecessary quote snipped..]
> Victor,
>
> Thank you for your assistance. I have another question.
Please don't quote what isn't necessary to continue the conversation.
> First
> variable has 640 elements. Second variable has only 64 elements.
> They look like ten 2D images with 64 area of elements.
So, the first one *logically* consists of the ten "areas", but
programmatically simply has 640 elements. The "boundary" between
"areas" is simply *assumed*, not necessarily programmed, correct?
> I can't use assignment to copy one out of ten images.
Not directly, no. You can extract part using 'std::copy'.
> Do I need to
> use memory address with offset?
No. Just a pair of iterators would do:
std::vector<int> all_images(640); // assuming it's filled in
...
std::vector<int> one_image;
int from = 260, to = from + 64; // whatever your range def is
assert(to <= all_images.size()); // or check and don't copy
std::copy(&all_images[from], &all_images[to],
std::back_inserter(one_image));
Or you can construct your 'one_image' from that range:
std::vector<int> one_image(&all_images[from], &all_images[to]);
> Or I have to use three dimension
> array?
I don't know. It might help. But it means you need to redesign your
program. It is up to you.
>
> vector< int > foo()
> {
> static const int TwoDimensionArray = 10;
> static const int Width = 8;
> static const int Height = 8;
>
> vector< int > result;
> result.resize( TwoDimensionArray * Width * Height );
> // or vector< int > result[ TwoDimensionArray ][ Width ][ Height ];
>
> for( int i = 0; i != result.size(); ++i )
> result.push_back( i );
>
> return result; // I want to copy only one image with 64 elements with
> memory address
> // or return result[5][0][0];
You need to extract the result before you can copy it. Here you could
simply do
return vector<int>(&result[Width*Height*5],
&result[Width*Height*(5 + 1)]);
> }
V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
==============================================================================
TOPIC: Type of elements of std::string
http://groups.google.com/group/comp.lang.c++/t/b6aba4785e69df38?hl=en
==============================================================================
== 1 of 1 ==
Date: Wed, Jan 27 2010 6:10 am
From: Jerry Coffin
In article <fe150af1-3499-46e2-b9ac-efa490368d42
@m25g2000yqc.googlegroups.com>, james.kanze@gmail.com says...
[ ... ]
> > std::string str(n, ' ');
> > is.read(&str[0], n);
[ ... ]
> What happens if there aren't n characters left to read? (And in
> fact, I don't know. I practically never use istream::read, and
> I don't have any documentation handy to check. But it's
> obviously a case which has to be considered.)
It returns the stream, which will have its failbit set if the read
failed (i.e., if it couldn't read as many characters as requested).
Given that the file specified the length, chances are pretty good
that the proper reaction is to log the error and abort, but depending
on what data it's trying to read, it might be able to live with
partial input, request the input from another source, or who knows
what.
Unlike fread, however, istream::read does NOT indicate how many
characters were read, so if (for example) trailing blanks in the
input were significant, and you really needed to distinguish them
from the string's initial value, this method probably wouldn't work
well (unless you could initialize the string to some other value you
knew wouldn't come from the input).
--
Later,
Jerry.
==============================================================================
TOPIC: Discount Wholesale AAA true leather Chanel Handbags& Purses (paypal
payment, www.dotradenow.com)
http://groups.google.com/group/comp.lang.c++/t/3403bc1900f2ba9e?hl=en
==============================================================================
== 1 of 1 ==
Date: Wed, Jan 27 2010 6:20 am
From: lanmao
AAA true leather Handbags
Cheap Wholesale Balenciaga Handbags <www.dotradenow.com paypal
payment>
Cheap Wholesale Balenciaga Purse
Cheap Wholesale Bally Purse <free shipping paypal payment>
Cheap Wholesale BOSS Purse <www.dotradenow.com paypal payment>
Cheap Wholesale Burberry Handbags
Cheap Wholesale Chanel Handbags <free shipping paypal payment>
Cheap Wholesale Chanel Purse
Cheap Wholesale Chloe Handbags
Cheap Wholesale Chloe Purse <free shipping paypal payment>
Cheap Wholesale Coach Handbags
Cheap Wholesale Coach Purse <www.dotradenow.com.cn paypal payment>
Cheap Wholesale D&G Handbags
Cheap Wholesale D&G Purse
Cheap Wholesale Dior Handbags <free shipping paypal payment>
Cheap Wholesale Dunhill Purse
Cheap Wholesale Fendi Handbags <free shipping paypal payment>
Cheap Wholesale Gucci Handbags <www.dotradenow.com.cn paypal
payment>
Cheap Wholesale Gucci Purse
Cheap Wholesale Hermes Handbags
Cheap Wholesale Hermes Purse <free shipping paypal payment>
Cheap Wholesale Jimmy Choo Handbags <free shipping paypal
payment>
Cheap Wholesale Jimmy Choo Purse <free shipping paypal payment>
Cheap Wholesale Juicy Handbags <www.dotradenow.com paypal payment>
Cheap Wholesale Kooba Handbags
Cheap Wholesale Lancel Handbags
Cheap Wholesale Loewe Handbags <www.dotradenow.com paypal
payment>
Cheap Wholesale LV Handbags <free shipping paypal payment>
Cheap Wholesale LV Purse <free shipping paypal payment>
Cheap Wholesale Marc Jacobs Handbags <www.dotradenow.com paypal
payment>
Cheap Wholesale Miumiu Handbags
Cheap Wholesale Mulberry Handbags
Cheap Wholesale Prada Handbags <free shipping paypal payment>
Cheap Wholesale Prada Purse
Cheap Wholesale Thomaswlde Handbags <www.dotradenow.com paypal
payment>
Cheap Wholesale Valentnv Handbags
Cheap Wholesale Versace Handbags <www.dotradenow.com paypal
payment>
A+ Grade
Purse
Discount Wholesale Anna Purse <free shipping paypal payment>
Discount Wholesale Burbetty Purse
Discount Wholesale Chanel Purse <www.dotradenow.com >
Discount Wholesale Chloe Purse
Discount Wholesale Coach Purse <www.dotradenow.com >
Discount Wholesale D&G Purse
Discount Wholesale Dior Purse <www.dotradenow.com >
Discount Wholesale Dooney&Bourke Purse
Discount Wholesale ED Hardy Purse <www.dotradenow.com >
Discount Wholesale Fendi Purse
Discount Wholesale Ferragmo Purse
Discount Wholesale Gucci Purse <www.dotradenow.com >
Discount Wholesale Guess Purse
Discount Wholesale LV Purse <free shipping paypal payment>
Discount Wholesale Miumiu Purse
Discount Wholesale Prada Purse <www.dotradenow.com >
Discount Wholesale Tous Purse
Discount Wholesale Versace Purse <www.dotradenow.com > <free
shipping paypal payment>
Handbags
Discount Wholesale BOSS Handbag
Discount Wholesale Burberry Handbag <www.dotradenow.com >
Discount Wholesale CA Handbag
Discount Wholesale Chanel Handbag <free shipping paypal payment>
Discount Wholesale Chloe Handbag <www.dotradenow.com >
Discount Wholesale Coach Handbag
Discount Wholesale D&G Handbag <www.dotradenow.com >
Discount Wholesale Dooney&Bourke Handbag
Discount Wholesale ED Hardy Handbag <www.dotradenow.com >
Discount Wholesale Fendi Handbag
Discount Wholesale Gucci Handbag <www.dotradenow.com >
Discount Wholesale Hermes Handbag
Discount Wholesale Jimmy Choo Handbag <free shipping paypal
payment>
Discount Wholesale Juciy Handbag
Discount Wholesale LV Handbag <www.dotradenow.com >
Discount Wholesale Miumiu Handbag <www.dotradenow.com >
Discount Wholesale Prada Handbag
Discount Wholesale Tous Handbag <www.dotradenow.com >
Discount Wholesale Versace Handbags <free shipping paypal payment>
==============================================================================
You received this message because you are subscribed to the Google Groups "comp.lang.c++"
group.
To post to this group, visit http://groups.google.com/group/comp.lang.c++?hl=en
To unsubscribe from this group, send email to comp.lang.c+++unsubscribe@googlegroups.com
To change the way you get mail from this group, visit:
http://groups.google.com/group/comp.lang.c++/subscribe?hl=en
To report abuse, send email explaining the problem to abuse@googlegroups.com
==============================================================================
Google Groups: http://groups.google.com/?hl=en
No comments:
Post a Comment