Signature-based polymorphism for C++:
Abstract: "Polymorphism[CW885] is defined as the potential for a variable or function parameter to have a value of one type at one point in time, and a value of a different type at another. In this paper, we propose an extension to the C++ language that offers the polymorphism flexibility of mu...
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Urbana, Ill.
1991
|
Schriftenreihe: | Center for Supercomputing Research and Development <Urbana, Ill.>: CSRD report
1104 |
Schlagworte: | |
Zusammenfassung: | Abstract: "Polymorphism[CW885] is defined as the potential for a variable or function parameter to have a value of one type at one point in time, and a value of a different type at another. In this paper, we propose an extension to the C++ language that offers the polymorphism flexibility of multiple inheritance without its software engineering disadvantages. Rather than relying on inheritance, our extension allows polymorphism to be achieved by explicitly defining a signature (public class interface) required at a usage or call site. Any object whose class conforms to the designated signature can be bound to a variable or formal parameter at that site When a member function is invoked on a pointer or reference with a signature as its declared type, the corresponding member function of the referenced object's actual class is invoked. The class's [sic] member functions that correspond to the signature's member functions can be virtual, inline, neither or both. |
Beschreibung: | 15 S. |
Internformat
MARC
LEADER | 00000nam a2200000 cb4500 | ||
---|---|---|---|
001 | BV009224760 | ||
003 | DE-604 | ||
005 | 00000000000000.0 | ||
007 | t | ||
008 | 940313s1991 |||| 00||| eng d | ||
035 | |a (OCoLC)24660732 | ||
035 | |a (DE-599)BVBBV009224760 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a eng | |
049 | |a DE-29T | ||
100 | 1 | |a Granston, Elana D. |e Verfasser |4 aut | |
245 | 1 | 0 | |a Signature-based polymorphism for C++ |c Elana D. Granston and Vincent F. Russo |
264 | 1 | |a Urbana, Ill. |c 1991 | |
300 | |a 15 S. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 1 | |a Center for Supercomputing Research and Development <Urbana, Ill.>: CSRD report |v 1104 | |
520 | 3 | |a Abstract: "Polymorphism[CW885] is defined as the potential for a variable or function parameter to have a value of one type at one point in time, and a value of a different type at another. In this paper, we propose an extension to the C++ language that offers the polymorphism flexibility of multiple inheritance without its software engineering disadvantages. Rather than relying on inheritance, our extension allows polymorphism to be achieved by explicitly defining a signature (public class interface) required at a usage or call site. Any object whose class conforms to the designated signature can be bound to a variable or formal parameter at that site | |
520 | 3 | |a When a member function is invoked on a pointer or reference with a signature as its declared type, the corresponding member function of the referenced object's actual class is invoked. The class's [sic] member functions that correspond to the signature's member functions can be virtual, inline, neither or both. | |
650 | 4 | |a C++ (Computer program language) | |
650 | 4 | |a Object-oriented programming (Computer science) | |
700 | 1 | |a Russo, Vincent F. |e Verfasser |4 aut | |
830 | 0 | |a Center for Supercomputing Research and Development <Urbana, Ill.>: CSRD report |v 1104 |w (DE-604)BV008930033 |9 1104 | |
999 | |a oai:aleph.bib-bvb.de:BVB01-006133933 |
Datensatz im Suchindex
_version_ | 1804123667819397120 |
---|---|
any_adam_object | |
author | Granston, Elana D. Russo, Vincent F. |
author_facet | Granston, Elana D. Russo, Vincent F. |
author_role | aut aut |
author_sort | Granston, Elana D. |
author_variant | e d g ed edg v f r vf vfr |
building | Verbundindex |
bvnumber | BV009224760 |
ctrlnum | (OCoLC)24660732 (DE-599)BVBBV009224760 |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>02056nam a2200325 cb4500</leader><controlfield tag="001">BV009224760</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">00000000000000.0</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">940313s1991 |||| 00||| eng d</controlfield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)24660732</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV009224760</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakddb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-29T</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Granston, Elana D.</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Signature-based polymorphism for C++</subfield><subfield code="c">Elana D. Granston and Vincent F. Russo</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Urbana, Ill.</subfield><subfield code="c">1991</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">15 S.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="1" ind2=" "><subfield code="a">Center for Supercomputing Research and Development <Urbana, Ill.>: CSRD report</subfield><subfield code="v">1104</subfield></datafield><datafield tag="520" ind1="3" ind2=" "><subfield code="a">Abstract: "Polymorphism[CW885] is defined as the potential for a variable or function parameter to have a value of one type at one point in time, and a value of a different type at another. In this paper, we propose an extension to the C++ language that offers the polymorphism flexibility of multiple inheritance without its software engineering disadvantages. Rather than relying on inheritance, our extension allows polymorphism to be achieved by explicitly defining a signature (public class interface) required at a usage or call site. Any object whose class conforms to the designated signature can be bound to a variable or formal parameter at that site</subfield></datafield><datafield tag="520" ind1="3" ind2=" "><subfield code="a">When a member function is invoked on a pointer or reference with a signature as its declared type, the corresponding member function of the referenced object's actual class is invoked. The class's [sic] member functions that correspond to the signature's member functions can be virtual, inline, neither or both.</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">C++ (Computer program language)</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Object-oriented programming (Computer science)</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Russo, Vincent F.</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="830" ind1=" " ind2="0"><subfield code="a">Center for Supercomputing Research and Development <Urbana, Ill.>: CSRD report</subfield><subfield code="v">1104</subfield><subfield code="w">(DE-604)BV008930033</subfield><subfield code="9">1104</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-006133933</subfield></datafield></record></collection> |
id | DE-604.BV009224760 |
illustrated | Not Illustrated |
indexdate | 2024-07-09T17:33:25Z |
institution | BVB |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-006133933 |
oclc_num | 24660732 |
open_access_boolean | |
owner | DE-29T |
owner_facet | DE-29T |
physical | 15 S. |
publishDate | 1991 |
publishDateSearch | 1991 |
publishDateSort | 1991 |
record_format | marc |
series | Center for Supercomputing Research and Development <Urbana, Ill.>: CSRD report |
series2 | Center for Supercomputing Research and Development <Urbana, Ill.>: CSRD report |
spelling | Granston, Elana D. Verfasser aut Signature-based polymorphism for C++ Elana D. Granston and Vincent F. Russo Urbana, Ill. 1991 15 S. txt rdacontent n rdamedia nc rdacarrier Center for Supercomputing Research and Development <Urbana, Ill.>: CSRD report 1104 Abstract: "Polymorphism[CW885] is defined as the potential for a variable or function parameter to have a value of one type at one point in time, and a value of a different type at another. In this paper, we propose an extension to the C++ language that offers the polymorphism flexibility of multiple inheritance without its software engineering disadvantages. Rather than relying on inheritance, our extension allows polymorphism to be achieved by explicitly defining a signature (public class interface) required at a usage or call site. Any object whose class conforms to the designated signature can be bound to a variable or formal parameter at that site When a member function is invoked on a pointer or reference with a signature as its declared type, the corresponding member function of the referenced object's actual class is invoked. The class's [sic] member functions that correspond to the signature's member functions can be virtual, inline, neither or both. C++ (Computer program language) Object-oriented programming (Computer science) Russo, Vincent F. Verfasser aut Center for Supercomputing Research and Development <Urbana, Ill.>: CSRD report 1104 (DE-604)BV008930033 1104 |
spellingShingle | Granston, Elana D. Russo, Vincent F. Signature-based polymorphism for C++ Center for Supercomputing Research and Development <Urbana, Ill.>: CSRD report C++ (Computer program language) Object-oriented programming (Computer science) |
title | Signature-based polymorphism for C++ |
title_auth | Signature-based polymorphism for C++ |
title_exact_search | Signature-based polymorphism for C++ |
title_full | Signature-based polymorphism for C++ Elana D. Granston and Vincent F. Russo |
title_fullStr | Signature-based polymorphism for C++ Elana D. Granston and Vincent F. Russo |
title_full_unstemmed | Signature-based polymorphism for C++ Elana D. Granston and Vincent F. Russo |
title_short | Signature-based polymorphism for C++ |
title_sort | signature based polymorphism for c |
topic | C++ (Computer program language) Object-oriented programming (Computer science) |
topic_facet | C++ (Computer program language) Object-oriented programming (Computer science) |
volume_link | (DE-604)BV008930033 |
work_keys_str_mv | AT granstonelanad signaturebasedpolymorphismforc AT russovincentf signaturebasedpolymorphismforc |