ウィリアム・ロジャー・ルイス（William Roger Louis、1936年5月8日-）は、アメリカの歴史学者。専門は、イギリス帝国史。ミシガン州デトロイト生まれ。オクラホマ大学卒業。オックスフォード大学セントアントニー校留学を経て、ハーバード大学で博士号取得。エール大学を経て、1970年からテキサス大学オースティン校歴史学部で教鞭をとっている。1993年、イギリス学士院に選出される。1999年、大英帝国勲章を授かる。
新宮市あけぼのから新宮市新宮にある国道42号広角北交差点および広角南交差点までを結ぶ和歌山県道である。もともと、現道の南側(新宮市消防本部の北西200m先の交差点から国道42号広角北交差点まで)は住宅地や崖沿いを這うように走る起伏の激しい狭あいした生活道路である。このため、JR紀勢本線陸橋付近から国道42号広角南交差点までを結ぶ新道が建設された。(2012年3月2日全区間供用開始)
薬の調合、販売のほかに、内科医の好んで用いた処方である浣腸を施すために医者のお供をして患者のところへ赴く、看護師のような役割を果たしていた。この当時は薬剤師と食品販売業者は区別されておらず、外科医同様にかなり低い地位に甘んじていた。この当時、薬を保存する手段が万全でなかったため、薬は大変高価であった。特定の薬や解毒剤は、当局の監視下でのみ調剤が許されたため、その特権を利用して大儲けする者が現れた。それを妬んだ医者にこの点を謗られるなどしたため、モリエールの攻撃対象となった。
当時の医師たちが古代の賢人たちの教えを重視し、そこから外れないように解釈を施したことは先述したが、それだけでなく、彼らは解剖学、生理学の基礎である外科を蔑視していた。彼らにとってメスを握る外科医など、人非人同然であった。外科が不浄なものとして軽蔑されたのは、解剖行為が教会によって禁じられていたからである。人体解剖はシクストゥス4世によって、1480年に初めて許され、犠牲として多数の血を流しながらも、これを契機として解剖学は急速な進歩を遂げた。外科術そのものも、アンブロワーズ・パレの血管結紮法の発明などで進展していた。ルイ14世が痔瘻を患って死にかけた際、首席外科医が国王の痔の手術に成功したことで、それまで虐げられていた外科は大きく前進し、信頼を勝ち取った。内科医たちは首席外科医の正確な診断を無視し、治療としてロバのミルクを飲ませようとしていたことも相まって、その成功はなおさら輝いたのであった。
17世紀当時のパリでは、上記のパリ大学医学部以外の医者は医療行為を禁じられていたが、シャーラタンとかオペラトゥールなどと呼ばれる偽医者たちが巷に溢れ、全くの無統制状態にあった。権威主義的で、威張り散らす「正規の」医者達は宮廷での評判が悪かったため、貴族たちはこうした偽医者を治療に当たらせる権利を有していた。こうして、偽医者たちは高貴な人々たちの城や館、宮殿の中枢にまで侵入することに成功したのである。彼らはギリシャ語もラテン語も解さず、野草や木の根を用いてあらゆる病気を治癒するともてはやされた。
ヒポクラテスやガレノスの教えを金科玉条のごとく守り、絶対視したせいで、教条主義に陥った。新学説は彼らの教えに反するとして徹底的に排除し、処方として瀉血、浣腸、下剤を好んで用いた。ところが神聖なる規定(単なる医学部の規定)によって、道具を扱うことは、それがどれほど繊細で高等なものであっても、医学部の尊厳と純粋性に対する侵犯となり、自らを貶めることとされていた。そのため、医師たちは外科医や薬剤師を見下していたが、その処方は彼らにやらせたのであった。これには「教育」項で見たように、入学や学位の授与に厳しい身上調査を行ったため、極めて閉鎖的な空気に支配されていたことも関係している。そのため、医学教育には実践的な臨床研究などなく、解剖実習も極稀にしか行われていなかった。
クラス宣言を次のように修正する。// 2つのクラスは Animal を仮想継承するclass Mammal : public virtual Animal {    public:        virtual Color getHairColor();};class WingedAnimal : public virtual Animal {    public:        virtual void flap();};// こうもりは依然として翼のある哺乳類であるclass Bat : public Mammal, public WingedAnimal {};これで、Bat::WingedAnimal の Animal 部分は、Bat::Mammal で使われている Animal と同一になり、つまり1つの Bat インスタンスには1つの Animal だけが対応することになって、Bat::eat() 呼び出しが曖昧でなくなる。これは、Mammal と WingedAnimal にvtableポインタを伴うような実装になる。つまり、Mammal の先頭と Animal 部分の先頭とのメモリオフセットは実行時まで不明となる。従って、Bat は (vtable*, Mammal, vtable*, WingedAnimal, Bat, Animal) となる。1つのオブジェクトに2つの vtable ポインタがあるため、そのぶんだけオブジェクトのサイズが大きくなるが、Animal は1つだけになるので曖昧さがなくなる。2つの vtable ポインタは Mammal と WingedAnimal それぞれの Animal の仮想継承に対応して存在する。Bat 型の全オブジェクトの vtable * の値は同じだが、Bat 型オブジェクトはそれぞれユニークな Animal オブジェクトを内包する。別のクラス、例えば Squirrel（リス）が Mammal を継承する場合、Squirrel における Mammal オブジェクトの vtable* は Bat の場合とは異なる。ただし、オブジェクトにおける Bat 部分と Squirrel 部分が同じサイズであれば、vtable* は同じになる。仮想関数テーブルは実際には同一ということはないが、基本的に距離（オフセット）を格納しているという点で同じである。